
///////////////////////////////////////////////////////////////////////////////
//
//  Copyright (c) 2009, Perry L Miller IV
//  All rights reserved.
//  BSD License: http://www.opensource.org/licenses/bsd-license.html
//  Derived from earlier work by Adam Kubach and Perry Miller found here:
//  http://sourceforge.net/projects/cadkit/
//
///////////////////////////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////////////////////////
//
//  Base class for menu visitors.
//
///////////////////////////////////////////////////////////////////////////////

#include "Helios/Menus/Visitor.h"
#include "Helios/Menus/MenuBar.h"
#include "Helios/Menus/ToolBar.h"

using namespace Helios::Menus;


///////////////////////////////////////////////////////////////////////////////
//
//  Constructor
//
///////////////////////////////////////////////////////////////////////////////

Visitor::Visitor() : BaseClass()
{
}


///////////////////////////////////////////////////////////////////////////////
//
//  Destructor
//
///////////////////////////////////////////////////////////////////////////////

Visitor::~Visitor()
{
}


///////////////////////////////////////////////////////////////////////////////
//
//  Visit the item.
//
///////////////////////////////////////////////////////////////////////////////

void Visitor::visit ( Menu &menu )
{
  menu.visitItems ( *this );
}


///////////////////////////////////////////////////////////////////////////////
//
//  Visit the item.
//
///////////////////////////////////////////////////////////////////////////////

void Visitor::visit ( MenuBar &mb )
{
  mb.visitItems ( *this );
}


///////////////////////////////////////////////////////////////////////////////
//
//  Visit the item.
//
///////////////////////////////////////////////////////////////////////////////

void Visitor::visit ( ToolBar &tb )
{
  tb.visitItems ( *this );
}
